package com.sky.task;

import lombok.extern.slf4j.Slf4j;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;

import java.util.Date;
//**Spring Task** 是Spring框架提供的任务调度工具，可以按照约定的时间自动执行某个代码逻辑。
//**定位：**定时任务框架        **作用：**定时自动执行某段Java代码
//**cron表达式**其实就是一个字符串，通过cron表达式可以**定义任务触发的时间**
//**构成规则：**分为6或7个域，由空格分隔开，每个域代表一个含义
//每个域的含义分别为：秒、分钟、小时、日、月、周、年(可选)
//2022年10月12日上午9点整 对应的cron表达式为：**0 0 9 12 10 ? 2022**
//**说明：**一般**日**和**周**的值不同时设置，其中一个设置，另一个用？表示。
//            * 表示所有值；
//            ? 表示未说明的值，即不关心它为何值；
//            - 表示一个指定的范围；
//            , 表示附加一个可能值；
//            /符号前表示开始时间，符号后表示每次递增的值；
//#### 1.3.1 Spring Task使用步骤    1). 导入maven坐标 spring-context（已存在）  2). 启动类添加注解 @EnableScheduling 开启任务调度  3). 自定义定时任务类
@Component
@Slf4j
public class MyTask {
//    @Scheduled(cron = "0/5 * * * * ?")
    public void executeTask() {
    log.info("定时任务开启执行:{}",new Date());
    }
}
